<style lang="scss">
	/* 注意要写在第一行，注意不能引入至uni.scss，同时给style标签加入lang="scss"属性 */
	@import "@/uni_modules/uview-plus/index.scss";
</style>
<script>
	// 导入auth模块以使用isLogin函数
	import * as Auth from '@/api/auth.js'
	export default {
		onLaunch: function() {
			console.log('App Launch')
			// 应用启动时检测是否已登录
			this.checkLoginStatus();
		},
		onShow: function() {
			console.log('App Show')
		},
		onHide: function() {
			console.log('App Hide')
		},
		methods: {
			// 检测登录状态的方法
			checkLoginStatus() {
				// 获取当前页面栈
				const pages = getCurrentPages();
				if (pages.length > 0) {
					const currentPage = pages[pages.length - 1];
					const currentRoute = currentPage.route;
					
					// 如果当前是登录页面或注册页面，则不进行登录检测
					if (currentRoute === 'pages/login/login' || currentRoute === 'pages/login/register') {
						console.log('当前在登录或注册页面，跳过登录检测');
						return;
					}
				}
				
				Auth.isLogin()
					.then(res => {
						// 检查返回结果，根据实际API返回结构调整判断条件
						if(res && res.code === 200){
							// 已登录，继续正常使用应用
							console.log('已登录，可以正常使用应用');
							uni.reLaunch({
								url: '/pages/index/index'
							});
						}else{
							// 未登录或登录失效，跳转到登录页面
							console.log('未登录或登录已失效，跳转到登录页面');
							uni.reLaunch({
								url: '/pages/login/login'
							});
						}
					})
					.catch(error => {
						// 网络错误或其他异常，也跳转到登录页面
						console.error('登录状态检测失败:', error);
						// 可以添加错误提示，告知用户网络问题
						// 但一般情况下，直接跳转到登录页面即可
						uni.reLaunch({
							url: '/pages/login/login'
						});
					});
			}
		}
	}
</script>

<style>
	/*每个页面公共css */
	body {
		background-color: #f5f5f5;
	}
</style>
